Skip to content

feat: Cagebreak greeter path + Hyprland deprecation (draft)#78

Merged
Nomadcxx merged 9 commits into
developmentfrom
feat/cage-compositor-investigation
Jul 6, 2026
Merged

feat: Cagebreak greeter path + Hyprland deprecation (draft)#78
Nomadcxx merged 9 commits into
developmentfrom
feat/cage-compositor-investigation

Conversation

@Nomadcxx

@Nomadcxx Nomadcxx commented Jun 17, 2026

Copy link
Copy Markdown
Owner

Summary

Implements #69: add Cagebreak as a greeter backend and begin phasing out Hyprland for the greeter session. Cagebreak replaces Hyprland; niri remains the default compositor.

Pivoted from the earlier Cage Lite draft: Cagebreak supports wlr-layer-shell, so gSlapper wallpapers (secondary monitors) work as they do under niri and sway. Hyprland is not removed in this PR — it stays functional, marked deprecated with a ~3 month removal timeline.

Architecture

greetd → cagebreak -e -c /etc/greetd/cagebreak-greeter-config
           ├─ exec sysc-greet --wallpaper-daemon   (gSlapper, layer-shell)
           └─ exec kitty → sysc-greet ; echo quit | socat - UNIX-CONNECT:"$CAGEBREAK_SOCKET"

No Go changes to sysc-greet itself.

Status

  • Design spec + plan: docs/superpowers/specs/2026-07-06-cagebreak-compositor-design.md
  • Headless spike: $CAGEBREAK_SOCKET propagates to exec children, gSlapper runs under cagebreak 3.2.1, quit via IPC socket works
  • Greeter config, installer (menu: niri, cagebreak, sway, hyprland-deprecated; AUR-helper fallback on Arch), Nix module (cagebreakPackage), nfpm, postinstall, docs
  • Hardware test: fresh build + installer on laptop — greeter, login, session handoff all work (single monitor, so no wallpaper surface to verify)
  • Multi-monitor wallpaper verification
  • Cagebreak packaging viability on Debian/Fedora/openSUSE (investigation pending)

Manual test checklist

  • paru -S cagebreak && sudo pacman -S socat
  • SYSC_COMPOSITOR=cagebreak sudo ./install.sh
  • sudo systemctl restart greetd (from TTY)
  • Greeter appears, login works, no restart loop
  • Wallpaper on secondary monitor (multi-monitor setups)
  • Non-US keyboard: XKB_DEFAULT_LAYOUT in greetd command env

Add cage as the recommended greetd backend (lite mode: Kitty-only, no
gSlapper wallpapers at startup). Hyprland greeter support remains
functional but is marked deprecated with ~3 month removal timeline.

Includes design spec, implementation plan, installer/Nix/postinstall
integration, docs, launcher script, and verify script. Addresses #69.
This was referenced Jun 17, 2026
Repository owner deleted a comment from coderabbitai Bot Jun 17, 2026
@Nomadcxx Nomadcxx changed the title feat: Cage greeter path + Hyprland deprecation (draft) feat: Cagebreak greeter path + Hyprland deprecation (draft) Jul 6, 2026
@Nomadcxx Nomadcxx changed the base branch from master to development July 6, 2026 11:40
@Nomadcxx Nomadcxx marked this pull request as ready for review July 6, 2026 12:49
@Nomadcxx Nomadcxx merged commit c983fae into development Jul 6, 2026
1 check passed
Repository owner deleted a comment from cursor Bot Jul 6, 2026
Repository owner deleted a comment from coderabbitai Bot Jul 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant